// 蜂窝蜜造平台生成代码，如手工更改，请添加到 .beeignore 忽略生成

package com.fowo.api.entity;

import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fowo.api.common.annotaion.*;
import com.fowo.api.common.mybatis.handlers.SysFileListTypeHandler;
import com.fowo.api.sys.entity.SysFile;
import io.swagger.v3.oas.annotations.media.Schema;
import java.io.Serializable;
import java.util.List;
import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.Setter;

/**
 * SellOrderDetail
 */
@DS("ds24")
@Getter
@Setter
@TableName(value = "sell_order_detail", autoResultMap = true)
@Schema(title = "订单列表详情")
public class SellOrderDetail implements Serializable {

  /**
   * 所属销售订单
   */
  @TableField(value = "`parent_id`")
  @JoinField(SellOrder.class)
  @Schema(title = "所属销售订单")
  private Long parentId;

  /**
   * 编号
   */
  @TableField(value = "`id`")
  @TableId(type = IdType.ASSIGN_ID)
  @Schema(title = "编号")
  private Long id;

  /**
   * 创建时间
   */
  @TableField(value = "`create_time`")
  @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
  @Schema(title = "创建时间")
  private java.util.Date createTime;

  /**
   * 创建人
   */
  @TableField(value = "`create_user`")
  @Schema(title = "创建人")
  private Long createUser;

  /**
   * 更新时间
   */
  @TableField(value = "`last_update_time`")
  @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
  @Schema(title = "更新时间")
  private java.util.Date lastUpdateTime;

  /**
   * 更新人
   */
  @TableField(value = "`last_update_user`")
  @Schema(title = "更新人")
  private Long lastUpdateUser;

  /**
   * 删除标记
   */
  @TableField(value = "`del_flag`")
  @TableLogic
  @Schema(title = "删除标记")
  private Boolean delFlag;

  /**
   * 图片
   */
  @TableField(value = "`img`", typeHandler = SysFileListTypeHandler.class)
  @Schema(title = "图片")
  private List<SysFile> img;

  /**
   * 标题
   */
  @TableField(value = "`title`")
  @Schema(title = "标题")
  private String title;

  /**
   * ASIN
   */
  @TableField(value = "`asin`")
  @Schema(title = "ASIN")
  private String asin;

  /**
   * asin链接
   */
  @TableField(value = "`asin_url`")
  @Schema(title = "asin链接")
  private String asinUrl;

  /**
   * MSKU
   */
  @TableField(value = "`seller_sku`")
  @Schema(title = "MSKU")
  private String sellerSku;

  /**
   * 商品编码
   */
  @TableField(value = "`order_item_id`")
  @Schema(title = "商品编码")
  private String orderItemId;

  /**
   * 品名
   */
  @TableField(value = "`product_name`")
  @Schema(title = "品名")
  private String productName;

  /**
   * 本地产品
   */
  @TableField(value = "`product_id`")
  @JoinField(Product.class)
  @Schema(title = "本地产品")
  private Long productId;

  /**
   * SKU
   */
  @TableField(value = "`sku`")
  @Schema(title = "SKU")
  private String sku;

  /**
   * 单价
   */
  @TableField(value = "`unit_price_amount`")
  @Schema(title = "单价")
  private java.math.BigDecimal unitPriceAmount;

  /**
   * 数量
   */
  @TableField(value = "`quantity_ordered`")
  @Schema(title = "数量")
  private Integer quantityOrdered;

  /**
   * 已配送
   */
  @TableField(value = "`quantity_shipped`")
  @Schema(title = "已配送")
  private Integer quantityShipped;

  /**
   * 销售收益
   */
  @TableField(value = "`sales_price_amount`")
  @Schema(title = "销售收益")
  private java.math.BigDecimal salesPriceAmount;

  /**
   * 积分成本
   */
  @TableField(value = "`points_monetary_value_amount`")
  @Schema(title = "积分成本")
  private java.math.BigDecimal pointsMonetaryValueAmount;

  /**
   * 税费
   */
  @TableField(value = "`tax_amount`")
  @Schema(title = "税费")
  private java.math.BigDecimal taxAmount;

  /**
   * 采购成本
   */
  @TableField(value = "`cg_price`")
  @Schema(title = "采购成本")
  private java.math.BigDecimal cgPrice;

  /**
   * 头程费用
   */
  @TableField(value = "`cg_transport_costs`")
  @Schema(title = "头程费用")
  private java.math.BigDecimal cgTransportCosts;

  /**
   * FBA发货费
   */
  @TableField(value = "`fba_shipment_amount`")
  @Schema(title = "FBA发货费")
  private java.math.BigDecimal fbaShipmentAmount;

  /**
   * 促销费
   */
  @TableField(value = "`promotion_amount`")
  @Schema(title = "促销费")
  private java.math.BigDecimal promotionAmount;

  /**
   * 商品促销编号
   */
  @TableField(value = "`promotion_ids`")
  @Schema(title = "商品促销编号")
  private String promotionIds;

  /**
   * 平台费
   */
  @TableField(value = "`commission_amount`")
  @Schema(title = "平台费")
  private java.math.BigDecimal commissionAmount;

  /**
   * 其他费
   */
  @TableField(value = "`fee_cost_amount`")
  @Schema(title = "其他费")
  private java.math.BigDecimal feeCostAmount;

  /**
   * 其他费用
   */
  @TableField(value = "`other_amount`")
  @Schema(title = "其他费用")
  private java.math.BigDecimal otherAmount;

  /**
   * 毛利润
   */
  @TableField(value = "`profit`")
  @Schema(title = "毛利润")
  private java.math.BigDecimal profit;

  /**
   * 商品支付金额（删除）
   */
  @TableField(value = "`item_price_amount`")
  @Schema(title = "商品支付金额（删除）")
  private java.math.BigDecimal itemPriceAmount;

  /**
   * 商品税（删除）
   */
  @TableField(value = "`item_tax_amount`")
  @Schema(title = "商品税（删除）")
  private java.math.BigDecimal itemTaxAmount;

  /**
   * 商品运费
   */
  @TableField(value = "`shipping_price_amount`")
  @Schema(title = "商品运费")
  private java.math.BigDecimal shippingPriceAmount;

  /**
   * 商品运费税
   */
  @TableField(value = "`shipping_tax_amount`")
  @Schema(title = "商品运费税")
  private java.math.BigDecimal shippingTaxAmount;

  /**
   * 礼品包装费
   */
  @TableField(value = "`gift_wrap_price_amount`")
  @Schema(title = "礼品包装费")
  private java.math.BigDecimal giftWrapPriceAmount;

  /**
   * 礼品包装税
   */
  @TableField(value = "`gift_wrap_tax_amount`")
  @Schema(title = "礼品包装税")
  private java.math.BigDecimal giftWrapTaxAmount;

  /**
   * 配送折扣
   */
  @TableField(value = "`shipping_discount_amount`")
  @Schema(title = "配送折扣")
  private java.math.BigDecimal shippingDiscountAmount;

  /**
   * COD服务费用
   */
  @TableField(value = "`cod_fee_amount`")
  @Schema(title = "COD服务费用")
  private java.math.BigDecimal codFeeAmount;

  /**
   * 配送折扣税
   */
  @TableField(value = "`shipping_discount_tax_amount`")
  @Schema(title = "配送折扣税")
  private java.math.BigDecimal shippingDiscountTaxAmount;

  /**
   * 商品促销折扣
   */
  @TableField(value = "`promotion_discount_amount`")
  @Schema(title = "商品促销折扣")
  private java.math.BigDecimal promotionDiscountAmount;

  /**
   * 商品促销折扣税
   */
  @TableField(value = "`promotion_discount_tax_amount`")
  @Schema(title = "商品促销折扣税")
  private java.math.BigDecimal promotionDiscountTaxAmount;

  /**
   * COD服务费用折扣
   */
  @TableField(value = "`cod_fee_discount_amount`")
  @Schema(title = "COD服务费用折扣")
  private java.math.BigDecimal codFeeDiscountAmount;

  /**
   * 礼品信息（买家提供）
   */
  @TableField(value = "`gift_message_text`")
  @Schema(title = "礼品信息（买家提供）")
  private String giftMessageText;

  /**
   * 礼品包装级别（买家提供）
   */
  @TableField(value = "`gift_wrap_level`")
  @Schema(title = "礼品包装级别（买家提供）")
  private String giftWrapLevel;

  /**
   * 商品状况说明（卖家提供）
   */
  @TableField(value = "`condition_note`")
  @Schema(title = "商品状况说明（卖家提供）")
  private String conditionNote;

  /**
   * 商品状况（卖家提供）
   */
  @TableField(value = "`condition_id`")
  @Schema(title = "商品状况（卖家提供）")
  private String conditionId;

  /**
   * 商品子状况（卖家提供）
   */
  @TableField(value = "`condition_subtype_id`")
  @Schema(title = "商品子状况（卖家提供）")
  private String conditionSubtypeId;

  /**
   * 计划交货开始日期
   */
  @TableField(value = "`scheduled_delivery_start_date`")
  @Schema(title = "计划交货开始日期")
  private java.util.Date scheduledDeliveryStartDate;

  /**
   * 计划交货结束日期
   */
  @TableField(value = "`scheduled_delivery_end_date`")
  @Schema(title = "计划交货结束日期")
  private java.util.Date scheduledDeliveryEndDate;

  /**
   * B2B价格
   */
  @TableField(value = "`price_designation`")
  @Schema(title = "B2B价格")
  private String priceDesignation;

  /**
   * 其他费名称
   */
  @TableField(value = "`fee_name`")
  @Schema(title = "其他费名称")
  private String feeName;

  /**
   * 其他费币种
   */
  @TableField(value = "`fee_currency`")
  @Schema(title = "其他费币种")
  private String feeCurrency;

  /**
   * 其他费币种符号
   */
  @TableField(value = "`fee_icon`")
  @Schema(title = "其他费币种符号")
  private String feeIcon;

  /**
   * 其他费金额
   */
  @TableField(value = "`fee_cost`")
  @Schema(title = "其他费金额")
  private java.math.BigDecimal feeCost;

  /**
   * 商品折扣
   */
  @TableField(value = "`item_discount`")
  @Schema(title = "商品折扣")
  private java.math.BigDecimal itemDiscount;

  /**
   * 订单号
   */
  @TableField(value = "`amazon_order_id`")
  @Schema(title = "订单号")
  private String amazonOrderId;
}
